<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<script type="text/javascript">
	$(function() {
		$('#framework_menu_treegrid').treegrid({
			url : '${pageContext.request.contextPath}/menuAction!menulist.action',
			idField : 'id',
			treeField : 'text',
			parentField : 'pid',
			fit : true,
			fitColumns : true,
			border : false,
			frozenColumns : [ [ {
				field : 'id',
				title : '菜单编号', 
				width : 10,
				hidden : true
			}, {
				field : 'text',
				title : '菜单名称',
				width : 200
			}] ],
			columns : [ [ {
				field : 'iconCls',
				title : '菜单图标',
				width : 30,
				align:'center',
				formatter : function(value) {
					if (!value) {
						return '';
					} else {
						return formatString('<span class="{0}" style="display:inline-block;vertical-align:middle;width:16px;height:16px;"></span>', value);
					}
				}
			}, {
				field : 'url',
				title : '菜单路径',
				width : 200
			}, {
				field : 'pmoudleid',
				title : '模块名称',
				width : 200,
				hidden : true
			}, {
				field : 'menuloadtype',
				title : '加载方式',
				width : 20,
				hidden : true
			}, {
				field : 'status',
				title : '启用状态',
				width : 50,
				align:'center',
				formatter:function(value,rowData,index){
				    if(rowData.parentmoudle!="parent"){
				    	if(rowData.status==1){
							return '<span style="color:blue">启用</span>';
						}else{
							return '<span style="color:red">未启用</span>';
						}
				    }else{
				    	return '';
				    }
					
				}
			},{
				field : 'menudisorder',
				title : '排序',
				align:'center',
				width : 30,
				hidden:true
			}, {
				field : 'ptext',
				title : '上级菜单名称',
				align:'center',
				width : 80
			}, {
				field : 'basePermission',
				title : '权限类型',
				align:'center',
				width : 80,
                formatter:function(value,rowData,index){
                    if(rowData.parentmoudle!="parent"){
                        if(rowData.basePermission==1){
                            return '<span style="color:blue">基础权限</span>';
                        }else{
                            return '<span style="color:red">菜单</span>';
                        }
                    }else{
                        return '';
                    }

                }
			}, {
				field : 'action',
				title : '操作',
				width : 80,
				align : 'center',
				formatter : function(value, row, index) {
					if(row.parentmoudle!="parent"){
						return formatString('<span  style="cursor:pointer" onclick="framework_menu_editmenu(\''+row.id+'\');"><img  src="${pageContext.request.contextPath}/images/icons/modify_or_edit.png" title="修改" alt="修改" style="margin-top:2px;"/>修改&nbsp;&nbsp;</span><span  style="cursor:pointer" onclick="framework_menu_menudelete(\''+row.id+'\');"><img  src="${pageContext.request.contextPath}/images/icons/delete.png" title="删除" alt="删除" style="margin-top:2px;"/>删除&nbsp;&nbsp;</span>');
					}else{
						return '';
					}
					
				}
			} ] ],
			toolbar : [ {
				text : '新增',
				iconCls : 'icon-add',
				handler : function() {
					framework_menu_addmenu();
				}
			}, '-', {
				text : '展开',
				iconCls : 'icon-redo',
				handler : function() {
					var node = $('#framework_menu_treegrid').treegrid('getSelected');
					if (node) {
						$('#framework_menu_treegrid').treegrid('expandAll', node.cid);
					} else {
						$('#framework_menu_treegrid').treegrid('expandAll');
					}
				}
			}, '-', {
				text : '折叠',
				iconCls : 'icon-undo',
				handler : function() {
					var node = $('#framework_menu_treegrid').treegrid('getSelected');
					if (node) {
						$('#framework_menu_treegrid').treegrid('collapseAll', node.cid);
					} else {
						$('#framework_menu_treegrid').treegrid('collapseAll');
					}
				}
			}, '-', {
				text : '刷新',
				iconCls : 'icon-reload',
				handler : function() {
					$('#framework_menu_treegrid').treegrid('reload');
				}
			} ]
		});
	});
	function framework_menu_editmenu(id) {
		if (id != undefined) {
			$('#framework_menu_treegrid').treegrid('select', id);
		}
		var node = $('#framework_menu_treegrid').treegrid('getSelected');
		$('<div/>').dialog({
			href : '${pageContext.request.contextPath}/framework/menu/menuEdit.jsp',
			width : 600,
			modal : true,
			title : '修改菜单',
			buttons : [ {
				text : '保存',
				iconCls : '',
				handler : function() {
					var moudleid=$("#framework_menumodify_comboxmoudle").combobox("getValue");//获取模块编码
					var d = $(this).closest('.window-body');
					$('#framework_menu_editmenuForm').form('submit', {
						url : '${pageContext.request.contextPath}/menuAction!menuEdit.action',
						onSubmit:function(){
							if ($(this).form("validate"))
							{
								$.messager.progress({title : '提示',text : '正在保存，请稍候 ....'});
							}
							else
							{
								return false;
							}
						},
						success : function(result) {
							try {
								var r = $.parseJSON(result);
								if (r.returnFlag) {
									$('#framework_menu_treegrid').treegrid('reload');
									d.dialog('destroy'); 
									//刷新左侧菜单数据
									$('ul[name="framework_menu_moudle_'+moudleid+'"]').tree('reload');
								}
								$.messager.show({
									title : '提示',
									msg : r.returnMsg
								});
								$.messager.progress('close'); 
							} catch (e) {
								$.messager.alert('提示', result);
								$.messager.progress('close'); 
							}
						}
					});
				}
			} ],
			onClose : function() {
				$(this).dialog('destroy');
			},
			onLoad : function() {
				$('#framework_menu_editmenuForm').form('load', node);
			}
		});
	}
	function framework_menu_menudelete(id) {
		if (id != undefined) {
			$('#framework_menu_treegrid').treegrid('select', id);
		}
		var node = $('#framework_menu_treegrid').treegrid('getSelected');
		if (node) {
			$.messager.confirm('询问', '您确定要删除【' + node.text + '】？', function(b) {
				if (b) {
					$.ajax({
						url : '${pageContext.request.contextPath}/menuAction!deleteMenu.action',
						data : {
							id : node.id
						},
						cache : false,
						dataType : 'JSON',
						success : function(r) {
							if (r.returnFlag) {
								$('#framework_menu_treegrid').treegrid('reload');
							    //刷新左侧菜单数据
							    $('ul[name="framework_menu_moudle_'+node.pmoudleid+'"]').tree('reload');
							}
							$.messager.show({
								title : '提示',
								msg : r.returnMsg
							});
							
						}
					});
				}
			});
		}
	}
	function framework_menu_addmenu() {
		$('<div/>').dialog({
			href : '${pageContext.request.contextPath}/framework/menu/menuAdd.jsp',
			width : 600,
			modal : true,
			title : '新增菜单',
			buttons : [ {
				text : '保存',
				iconCls : '',
				handler : function() {
					var moudleid=$("#framework_menuadd_comboxmoudle").combobox("getValue");//获取模块编码
					var d = $(this).closest('.window-body');
					$('#framework_menu_addMenu').form('submit', {
						url : '${pageContext.request.contextPath}/menuAction!addMenu.action',
						onSubmit:function(){
							if ($(this).form("validate"))
							{
								$.messager.progress({title : '提示',text : '正在保存，请稍候 ....'});
							}
							else
							{
								return false;
							}
						},
						success : function(result) {
							try {
								var r = $.parseJSON(result);
								if (r.returnFlag) {
									d.dialog('destroy'); 
									$('#framework_menu_treegrid').treegrid('reload');
									//刷新左侧菜单数据
									$('ul[name="framework_menu_moudle_'+moudleid+'"]').tree('reload');
								}
								$.messager.show({
									title : '提示',
									msg : r.returnMsg
								});
								$.messager.progress('close'); 
							} catch (e) {
								$.messager.alert('提示', result);
								$.messager.progress('close'); 
							}
						}
					});
				}
			} ],
			onClose : function() {
				$(this).dialog('destroy');
				$('#framework_menu_treegrid').treegrid('reload');
			}
		});
	}
</script>
 <table id="framework_menu_treegrid"></table> 